package cn.ncupyh.comptest;

import java.util.Scanner;

//素数
public class PrimeNumber {
    public static void main(String[] args) {
        //打印 1 - 100 之间所有的素数
      //  printPrimeNumber();

        //给定一个数字，判定一个数字是否是素数
        ifPrimeNumber();
    }

    //给定一个数字，判定一个数字是否是素数
    private static void ifPrimeNumber() {
        Scanner s = new Scanner(System.in);
        int i = s.nextInt();//输入数字

//        //法一:若能被整除,则不是素数
//        if (i % 2 != 0 && i % 3 != 0 && i % 5 != 0 &&
//                i % 7 != 0 && i % 11 != 0 && i % 13 != 0) {
//            System.out.println("不是素数");
//        }else {
//            System.out.println(i + "是素数");
//        }


//        //法二:
//        int j = 2;
//        for (; j <= i/2 ; j++) {
//            if(i%j==0){
//                break;
//            }
//        }
//        if(j>i/2){
//            System.out.println(i + "是素数!");
//        }

//法三:
        int j = 2;
        for (; j <= Math.sqrt(i) ; j++) {
            if(i%j==0){
                break;
            }
        }
        if(j>Math.sqrt(i)){
            System.out.println(i + "是素数!");
        }


    }

    //打印 1 - 100 之间所有的素数
    private static void printPrimeNumber() {
        //打印 1 - 100 之间所有的素数

        System.out.println("1 " + "2 " + "3 " + "5 " + "7 " + "11 " + "13");
        for (int i = 2; i <= 100; i++) {
            //若能被整除,则不是素数
            if (i % 2 != 0 && i % 3 != 0 && i % 5 != 0 &&
                    i % 7 != 0 && i % 11 != 0 && i % 13 != 0) {
                System.out.println(i);
            }
        }
    }
}
